Reservoir simulation is an area of reservoir engineering that employs computer models to predict the transport of fluids, such as petroleum, water, and gas, within a reservoir. Reservoir simulators are used by petroleum producers in determining how best to develop new fields, as well as generate production forecasts on which investment decisions can be based in connection with developed fields.
Reservoir simulation models are typically implemented using a number of discretized blocks, referred to interchangeably herein as “blocks,” “gridblocks,” or “cells.” Models can vary in size from a few blocks to hundreds of millions of blocks. Often, a reservoir simulation workflow begins with the creation of a high resolution model comprising many “fine” gridblocks, at which point the size of the model may be reduced to “coarse” gridblocks so that simulations can run in a reasonable time period. This process is far from automated, and, moreover, is subject to inconsistencies in the model, depending on the number, location, and orientation of faults and wells in the reservoir being modeled. Some problems may be addressed by regridding the model; however, regridding may be difficult if the underlying data and/or software used to create the model is unavailable.
Assuming one begins with a high resolution geocellular fine grid model, there are existing processes for reducing the size of the model, which is typically referred to as upscaling and/or coarsening. Both upscaling and coarsening involve sampling a fine scale model and creating a coarser model that attempts to honor the flow properties, such as pore volume, transmissibility and saturations, of the original model. By its nature, upscaling and coarsening are averaging processes and one of the goals is to maintain the flow characteristics of a model. As used herein, coarsening is a process in which gridblocks are consolidated into larger blocks by removing grid nodes without changing the remainder of the grid. Upscaling is similar to coarsening, however with upscaling, the grid can be changed and resampled onto a coarser grid.
All of the methods described herein are valid in three dimensions (“3D”); however, for purposes of simplicity, the methods will be described with reference to two dimensions (“2D”) so as not to unduly complicate the drawings and the discussion. FIGS. 1A-1E collectively illustrate the concept of coarsening of a grid. FIG. 1A illustrates an 8×4 grid 100 comprising a plurality of gridblocks, representatively designated by a reference numeral 102. FIG. 1B illustrates grouping of the fine gridblocks 102 to perform 2×2 coarsening of the grid 100, in which every two gridblocks in the x-direction and every two gridblocks in the y-direction are grouped together to form larger, or coarse, gridblocks, representatively designated by a reference numeral 104. FIG. 1C illustrates a grid 100′ comprising the grid 100 following completion of the 2×2 coarsening and removal of the interior nodes of the coarse gridblocks 104. FIG. 1D illustrates a grid 100″, which comprises the grid 100′ after 4×2 coarsening has been performed thereon, resulting in even coarser gridblocks, representatively designated by a reference numeral 106. FIG. 1E illustrates a grid 100′″, which comprises the grid 100″ after 2×1 coarsening has been performed thereon, resulting in a single gridblock 108.
As will be easily observed from FIGS. 1A-1E, each of the coarse gridblocks 104108 is made up of a number of fine gridblocks 102. Specifically, each of the coarse gridblocks 104 comprises four fine gridblocks 102; each of the coarse gridblocks 106 comprises 16 fine gridblocks 102; and the coarse gridblock 108 comprises 32 fine gridblocks 102.
As illustrated in FIGS. 1A-1E, coarsening is fairly simple and straightforward when performed in connection with non-complex reservoir models. The process becomes more complicated if complexities, particularly discontinuities, are added to the model. For example, FIG. 2A illustrates a grid 200 that is identical to the grid 100 of FIG. 1A except that the grid 200 includes a discontinuity 202. FIG. 2B illustrates the same grid as FIG. 2A, but without a planar surface. In any event, it will be assumed for the sake of example and illustration herein that the discontinuity 202 is a structural discontinuity, such as a fault. FIG. 3 illustrates the grid 200 after the same 2×2 grouping illustrated in FIG. 1B has been performed. As shown in FIG. 3, the 2×2 coarsening results in a natural grouping for some of the blocks, or cells; however, for others, the fault would be internal to the coarsened cell, which is not permitted because a cell represents a homogeneous volume upon which fluid calculations are performed. If internal features were allowed, then this would require subdividing cells into smaller cells, which defeats the purpose of coarsening.
Currently, there are four common methods by which to handle the situation illustrated in FIG. 3:
1. coarsen anyway and throw away the fault information wherever this is internal to a coarsened cell (“coarsen anyway”);
2. regrid the model to resample the attributes and fault onto the desired 4×2 grid (“regrid the model”);
3. coarsen where you can, but do not coarsen blocks wherever the fault is internal to a cell (“coarsen where you can”); and
4. coarsen where you can and then logically group the cells into rectangular coarse blocks but still leave whatever fine scale blocks are necessary to maintain the fault (“coarsen where you can and then regroup”).
FIGS. 4A-7B illustrate application of the above four methods to the grid 200. In particular, FIG. 4A illustrates a grid 200′ comprising the grid 200 after application of the “coarsen anyway” method, in which the nodes, as well as the discontinuity information, internal to the coarse blocks are removed. As illustrated in FIG. 4A, in this situation, the discontinuity 202 comes and goes; it is present along portions of some of the coarsened grid edges and missing in others. FIG. 4B illustrates a three-dimensional (“3D”) view of the resultant model of FIG. 4A.
FIG. 5A illustrates a grid 200″ comprising the grid 200 after application of the “regrid the model” method, in which fault and attributes are resampled on to the coarsened 4×2 grid. This method maintains the discontinuity; however, portions of the discontinuity 202 internal to the coarse blocks are resampled and moved to the nearest logical gridblock edge in order to maintain the discontinuity, albeit relocated. For the sake of clarity, the original location from which the discontinuity has been moved is represented in FIG. 5A as a dotted line 500. FIG. 5B illustrates a 3D view of the resultant model of FIG. 5A.
FIG. 6A illustrates a grid 200′″ comprising the grid 200 after application of the “coarsen where you can, but maintain the fine scale” method, in which the grid is coarsened where the discontinuity is not present internal to a coarse block. However, for the blocks in which the discontinuity would be internal thereto, coarsening is skipped. This maintains the discontinuity exactly where it was previously, but limits the amount that the size of the model can be reduced. FIG. 6B illustrates a 3D view of the resultant model of FIG. 6A.
FIG. 7A illustrates a grid 200″″ comprising the grid 200 after application of the “coarsen where you can and then regroup” approach, which is a logical extension of the method illustrated in FIGS. 6A and 6B. In particular, in this method, an attempt is made to group some of the finer (i.e., non-coarsened) blocks. FIG. 7B illustrates a 3D view of the resultant model of FIG. 7A.
Each of the above-described methods suffers from deficiencies. For example, the “coarsen anyway” approach results in the loss of discontinuity information, which can significantly affect connectivity of different blocks. The “regrid the model” approach results in the discontinuity being relocated. For small upscaling factors, this may be acceptable; however, the relocation can have significant effects. For example, if regridding occurs in the vicinity of a well, relocation of a discontinuity may result in the well being displaced from one side of the discontinuity to the other, thereby also affecting the well in the wrong fault block and which layers are modeled as being perforated by the well. The “coarsen where you can” approach avoids the deficiencies of the first two approaches; however, the scalability of the process is naturally limited. For example, as illustrated in FIG. 6A, the discontinuity was maintained, but the size of the grid 200 could only be reduced from 32 blocks to 14. For small coarsening factors this might be acceptable, but for larger models and larger coarsening factors, maintaining nearly all of the fine scale detail effectively defeats the purpose of coarsening.
The remaining method, in which the grid is coarsened where possible and then remaining blocks are logically grouped into rectangular coarse blocks, with fine scale blocks remaining where necessary to maintain the fault, while probably the best of the four methods, is still limited in terms of scalability. Moreover, it is a non-unique method, meaning there are many different ways to group the cells, and is currently a tedious manual process.